//
//  AppDelegate.m
//  A01-CZ彩票
//
//  Created by apple on 15-6-13.
//  Copyright (c) 2015年 itcast. All rights reserved.
//

#import "AppDelegate.h"
#import "CZTabBarController.h"
#import "CZNewFeatureController.h"
@interface AppDelegate ()

@end

@implementation AppDelegate


- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Override point for customization after application launch.
    //1 初始化window对象
    self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
    //2 设置window为key  并显示
    [self.window makeKeyAndVisible];
    
    
    //3 创建tabBarcontroller
    
    //判断当前应用是第一次安装运行，还是升级安装运行
    //根据软件的版本号判断
    
    //获得当前的版本号
     float version = [[NSBundle mainBundle].infoDictionary[@"CFBundleShortVersionString"] floatValue];
    //如果是升级安装,获取上一次的版本号（偏好设置中）
    NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
    float oldVersion = [userDefaults floatForKey:@"version"];
    if (version > oldVersion) {
        //判断，如果当前版本号，大于之前的版本号，显示新特性界面
        
        //
        CZNewFeatureController *vc = [CZNewFeatureController new];
        self.window.rootViewController = vc;
        
//        //把当前的版本存储到偏好设置中
        [userDefaults setFloat:version forKey:@"version"];
        [userDefaults synchronize];

        
    }else{
        //否则直接进入app
        CZTabBarController *tabBarController = [CZTabBarController new];
        self.window.rootViewController = tabBarController;
    }
    
    
    
   
    
   
   //设置状态条
    [application setStatusBarStyle:UIStatusBarStyleLightContent];
    [application setStatusBarHidden:NO];
    return YES;
}


- (void)applicationWillResignActive:(UIApplication *)application {
    // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.
    // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game.
}

- (void)applicationDidEnterBackground:(UIApplication *)application {
    // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.
    // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.
}

- (void)applicationWillEnterForeground:(UIApplication *)application {
    // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background.
}

- (void)applicationDidBecomeActive:(UIApplication *)application {
    // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
}

- (void)applicationWillTerminate:(UIApplication *)application {
    // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
}

@end
